#include "pageLib.h"
#include "PageLibPreprocessor.h"
#include <fstream>
#include <sstream>
#include <sys/types.h>
#include <dirent.h>
#include <unistd.h>

void test()
{
    PageLib rss;//建立一个对象
    rss.parsePage("legal.xml");
    
    rss.dumpPage("rigepage.dat");
}

void test0()
{
    PageLib rss;//建立一个对象

    //打开人民网语料目录流
    chdir("人民网语料");
    string pwd = getcwd(nullptr, 0);
    DIR* pdir = opendir(pwd.c_str());
    if(nullptr == pdir)
    {
        perror("opendir");
        return;
    }

    //打开每一个文件
    struct dirent *pdirent;
    while ((pdirent = readdir(pdir)) != NULL)
    {
        ifstream ifs(pdirent->d_name);
        if(!ifs.good()) {
		    perror("ifstream open error!");
            return;
	    }
        if(strcmp(pdirent->d_name,".") == 0||strcmp(pdirent->d_name,"..") == 0
            ||strcmp(pdirent->d_name,"rigepage.dat") == 0)
        {
            continue;
        }
        cout<<pdirent->d_name<<endl;//测试用
        rss.parsePage(pdirent->d_name);
        rss.dumpPage("rigepage.dat");
	    ifs.close();
    }
    closedir(pdir);
    chdir("..");

    rss.storeOffset("offset.dat");
}

void test1()
{
    PageLibPreprocessor plp;
    plp.creatPageVec();
    plp.buildInvertIndexMap();
}

int main()
{
    test1();
    return 0;
}